Cạm bẫy Monkey patch

Bất cẩn trong việc viết hoặc yếu kém trong việc soạn tài liệu cho các bản monkey patch thì có thể dẫn đến các vấn đề:

  • Chúng có thể dẫn đến các 'vấn đề nâng cấp' khi sự giả định của bản patch về đối tượng được patch không còn đúng nữa; một bản phát hành mới rất có thể sẽ phá vỡ các bản vá. Vì lý do này, các bản monkey patch thường được thực hiện theo điều kiện, và chỉ được áp dụng nếu thích hợp.[4]
  • Nếu hai mô-đun cùng cố gắng monkey patch vào cùng một phương thức, một trong số chúng (cái mà chạy cuối cùng) sẽ "thắng" và bản vá kia sẽ không có hiệu lực, trừ khi các bản monkey patch được viết với một mô thức như alias_method_chain.[5]
  • Chúng tạo ra sự sai khác giữa mã nguồn gốc trên đĩa cứng và 'hành vi được quan sát', điều này có thể gây rất bối rối cho bất kỳ ai không biết về sự tồn tại của các bản vá.